From mint-bounce@lists.fishpool.fi Tue Dec 22 15:48:57 2009 X-Authenticated: #3276113 X-Provags-ID: V01U2FsdGVkX1/8su8Faoj8/jWMqajpM2p5qluGZQXwx8mgebmSB9 M8j8rK2VDHcMZx From: Gerhard Stoll To: MiNT-List Subject: Re: [MiNT] Possible bug in cflib's font selector Date: Tue, 22 Dec 2009 21:44:46 +0100 Message-Id: <3344363206.12160346966@[192.168.178.13]> Mime-Version: 1.0 User-Agent: Mieze/1.7b8-16012007 Reply-To: gerhard_stoll@gmx.de In-Reply-To: <4B30FE9B.30001@freesbee.fr> References: <4B30FE9B.30001@freesbee.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed X-Y-GMX-Trusted: 0 X-FuHaFi: 0.53 X-ecartis-version: Ecartis v1.0.0 Sender: mint-bounce@lists.fishpool.fi Errors-to: mint-bounce@lists.fishpool.fi X-original-sender: gerhard_stoll@gmx.de Precedence: bulk List-help: List-unsubscribe: List-Id: X-List-ID: List-subscribe: List-owner: List-post: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mail.sparemint.org id nBMKmuk2030546 Vincent Rivière wrote: > I guess the functions xfsl_init(), xfsl_event() and xfsl_exit() are > called via assembler functions to cope with the mshort API, right ? This functions are from the xFSL interface. Is it a frontselector. The program looks for the cookie 'xFSL'. There is an pointer to the structure: typedef struct { unsigned long xfsl; /* Magic 'xFSL' */ unsigned int revision; /* Interface revision */ unsigned long product; /* Font-selector identifier */ unsigned int version; /* Font-selector version */ xFSL_INPUT xfsl_input; /* Simplified call */ xFSL_INIT xfsl_init; /* Init call */ xFSL_EVENT xfsl_event; /* Event call */ xFSL_EXIT xfsl_exit; /* Exit call */ xFSL_INFO xfsl_info; /* Info call */ } xFSL; > It says that the API is "Pure C cdecl". > Does this mean that the clobbered registers are d0/d1/a0/a1, like GCC > ? Do you agree, Henk ? I´m not Henk, but cdecl ist that what there stand. If you use 'cdecl' PureC put all paramters on the stack, normly it use for the parameter the register do-d2 and a0-a1. For PureC is defined that a assembler function must save the register d3-d7 and a2-a6. This is not a system function like AES. I saw that the tos.hyp is broken at this pages. It is time for a new release. Gerhard